/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package br.ufg.inf.pos.bd;

import java.util.List;
import javax.swing.table.DefaultTableModel;

/**
 *
 * @author luan
 */
public class CategoriaServiceImpl implements CategoriaService{
    
    CategoriaDao categoriaDao;

    public CategoriaServiceImpl() {
        categoriaDao = new CategoriaDaoImpl();
    }

    @Override
    public DefaultTableModel cadastrarCategoria(Categoria categoria) throws RegraNegocioException{
        verificaIntegridade(categoria);
     int codigoCadastrado = categoriaDao.salvar(categoria);
        return listarCategoriasJtable();
    }

    @Override
    public DefaultTableModel listarCategoriasJtable() {
       return categoriaDao.listarCategoriaJtable();
    }

    @Override
    public List<Categoria> listarCategorias() {
      return categoriaDao.listarCaterogiasCombo(); 
    }

    @Override
    public Categoria getByName(String categoria) {
      return categoriaDao.getByName(categoria);
    }
    
   private void verificaIntegridade(Categoria categoria) {
        if(categoria.getCategoria().equalsIgnoreCase("") || 
            categoria.getCategoria() == null    ){
            throw new RegraNegocioException("Favor informar a CATEGORIA");
        }
    }
    
    
    
    
}
